Day 30 - 完賽心得:30 天的挑戰與成長
前言:一個不一樣的挑戰
大家好,歡迎來到第三十天,也是這段旅程的最後一天。今天,我想與你分享這 30 天以來的真實心得與感受。
這 30 天對我來說是什麼?
這是我作為 Flutter 工程師四年職涯以來的第 10 個 APP,但卻是我遇過最硬的一次挑戰。
開發時間軸:從離職到鐵人賽
這個專案基本上是我今年 9 月離職後開始開發的。離開舒適圈後,我決定投入一個多月的時間,全心打造這個作品。這一個多月的實作紀錄,濃縮成了這 30 天的鐵人賽文章。
時間投入:每天 10 小時的堅持
鐵人賽的挑戰對我來說非常硬。我幾乎每天投入了 10 個小時左右的時間,基本上是每一天開發的內容就是當天的文章。因為我每一篇文章都是經過:
-
不斷地實作:確保程式碼真實可運行
-
反覆撰寫:讓技術內容易懂且有深度
-
確認優化:確保品質達到標準
只有在這些步驟都完成後,我才敢繳交到鐵人賽。
技術上的突破
1. 架構設計的實踐
這 30 天的文章,不僅僅是想要傳遞好的架構可以在開發上更好維護,更是我將理論轉化為實踐的過程。我想證明:
-
Feature-First Clean Architecture 在實際專案中的可行性
-
設計系統對於開發效率的提升
-
良好的測試架構帶來的信心
2. Firebase 全方位整合
更是結合了 Firebase 的多項服務:
-
Authentication:使用者登入與身份驗證
-
Cloud Firestore:即時資料庫
-
Cloud Storage:圖片與檔案儲存
-
Cloud Messaging:推播通知
-
Crashlytics:錯誤追蹤
-
Performance Monitoring:效能監控
-
Analytics:使用者行為分析
對於我來說,後端的串接是一大的挑戰,更是跨出我的舒適圈。
3. AI 整合的探索
- 整合 Google Gemini API
- 實作 AI 聊天室氛圍助手
- 探索 Figma MCP 設計到程式碼的轉換
知識的實踐與整合
讀書會的成果
把我在今年與讀書會夥伴一起讀 Flutter Engineering 這一本書的內容實踐出來,將理論轉化為真實的程式碼。
團隊協作的結晶
把與 CREW UP 夥伴設計出來的作品開發出來,從設計到實作,完整呈現一個產品的誕生過程。
感謝 CREW UP 的夥伴們,對於我想開發出來給我非常大的支持。有你們的鼓勵與信任,讓我能夠全心投入這個專案,將設計理念轉化為真實可用的產品。
技能的整合
更是想要整合我會的技能在這邊,告訴大家我是一位可以:
-
從 0 到 1 做出完整的應用程式
- 建立良好的設計系統
- 建構優質的開發框架
- 一位在乎品質的工程師
這段旅程教會我什麼?
1. 堅持的力量
每天 10 小時、連續 30 天,這不僅是技術的挑戰,更是意志力的考驗。但正是這份堅持,讓我完成了這個看似不可能的任務。
2. 品質的重要性
寧願多花時間確認品質,也不願意草率交差。這是對讀者的尊重,也是對自己的要求。
3. 學習的方法
最好的學習方式就是實作,然後用文章的形式教授他人。在這個過程中,你會發現自己的盲點,也會更深入理解技術的本質。
4. 跨出舒適圈
從前端到後端、從開發到部署、從設計到實作,每一步都是新的挑戰。但也正是這些挑戰,讓我成長為更全面的工程師。
5. AI 協作開發的力量
在這 30 天中,我也非常讚嘆現在開發的效率。使用 AI Agent 的開發模式,讓我可以透過 AI 的教學與協作,大幅提升開發效率。
這種新的開發方式不僅讓程式碼撰寫更快速,更重要的是:
-
學習加速:AI 可以即時解答問題,提供最佳實踐
-
程式碼品質:AI 協助審查與優化程式碼結構
-
文件撰寫:讓 30 天的文章更加完整與詳盡
-
問題除錯:快速找到問題癥結點並提供解決方案
這次的經驗讓我看見了 AI 輔助開發的未來,它不是取代工程師,而是成為我們最強大的夥伴,讓我們能夠專注在更有創意和價值的工作上。
展望未來:新的旅程即將開始
發現自己的熱情所在
在這一個多月的開發過程中,我有一個重要的發現:我發現使用者體驗(UX)非常重要,體驗也非常重要。技術再好,如果使用者不喜歡用,產品就失去了意義。
更重要的是,我發現我喜歡做遊戲化的 APP。
遊戲化不僅僅是加入積分或徽章,而是如何讓使用者在使用產品的過程中,感受到樂趣、成就感和持續的動力。這是一個充滿挑戰且令人興奮的領域。
關於 Crew Up 這個專案
Crew Up 對我來說,是一個非常寶貴的學習歷程。透過這個專案,我:
- 完整實踐了 Feature-First Clean Architecture
- 整合了 Firebase 的完整生態系
- 實作了 AI 聊天助手功能
- 建立了完善的設計系統
這個專案已經達成了它的目標:證明我能夠從 0 到 1 打造一個完整、有品質的應用程式。
📱 Crew Up Demo 影片
想看看實際成果嗎?這是完整的 APP 功能展示及開發 Firebase 實作資訊:

至於上架,目前我並沒有這個打算。這個專案更像是我的技術展示作品,一個完整的學習紀錄。
下一步:深入研究遊戲化
接下來,我會開始深入研究遊戲化這個領域:
- 學習遊戲化框架與設計原則
- 研究使用者動機理論(如 Octalysis Framework)
- 探索如何讓使用者用 APP 的體驗可以更好
- 實作遊戲化工具 APP
我想做的是:
-
做自己熱愛的事情
- 創造讓使用者真正喜歡使用的產品
- 將遊戲化的樂趣融入日常工具中
這是我的下一個挑戰,從純技術開發走向更注重體驗與樂趣的產品設計。我相信這段鐵人賽的經歷,已經為我打下了堅實的基礎。
邀請你一起成長
如果有興趣認識我的朋友,歡迎追蹤我的 Instagram:
👉 @cloudia.live
我將會持續分享:
- 🎮 遊戲化設計的學習與研究
- 💡 技術探索與實踐
- 🌟 生活中的大大小小的體驗
- 🚀 產品開發的幕後故事
感謝每一位看過我文章的人
感謝這 30 天來陪伴我的每一位讀者。
你們的閱讀、你們的回饋、你們的支持,是我持續前進的動力。
這一個多月下來的實作紀錄,凝聚成這 30 天的文章,能夠與你們分享,是我最大的榮幸。
希望這 30 天的文章,能夠為你的 Flutter 開發旅程帶來一些幫助,也希望能啟發更多人做自己熱愛的事情。
讓我們一起成為更好的工程師,創造更好的產品!
📋 30 天完整文章列表
想閱讀完整系列文章嗎?歡迎到 iT 邦幫忙鐵人賽閱讀:
👉 我的 Flutter 進化論:30 天打造「Crew Up!」的架構之旅
基礎架構篇 (Day 1-6)
- Day 1 - 專案啟動與架構選型
- Day 2 - 設計系統的哲學與實作
- Day 3 - 元件的藝術:打造類型安全、高效能的 Flutter UI 分子
- Day 4 - 國際化與在地化:打造全球化的 App
- Day 5 - go_router 實戰:從基礎路由到完整導航解決方案
- Day 6 - Riverpod 2.0 實戰攻略:從架構設計到效能優化的完整指南
資料層篇 (Day 7-9)
- Day 7 - Repository 模式:軟體架構的自由基石
- Day 8 - 儲存架構設計:分層儲存策略與安全邊界
- Day 9 - Cache、TTL 與版本管理:實現高效能的資料快取策略
錯誤處理與測試篇 (Day 10-12)
- Day 10 - 錯誤處理與日誌記錄:建立完整的錯誤追蹤機制
- Day 11 - Unit Test 與 AAA 模式:為 Clean Architecture 建立品質防護網
- Day 12 - UI 測試實戰:打造穩固的架構防護網
Firebase 整合篇 (Day 13-20)
- Day 13 - Firebase 專案設定:從多環境管理到雲端整合
- Day 14 - Firebase Authentication:從 Google 登入到完整認證系統
- Day 15 - Cloud Firestore:即時資料庫設計與優化
- Day 16 - Firebase Storage:檔案上傳與管理的最佳實踐
- Day 17 - Firebase Cloud Messaging - 基礎理論與跨平台實戰
- Day 18 - Firebase Crashlytics - 錯誤追蹤與分析系統
- Day 19 - Firebase Analytics:數據驅動的產品決策
- Day 20 - Firebase Performance Monitoring:數據驅動的效能優化
AI 與進階功能篇 (Day 21-22)
- Day 21 - Google Gemini API:為 App 加入 AI
- Day 22 - AI Agent 實作:聊天室氣氛分析與建議系統
部署與 CI/CD 篇 (Day 23-26)
- Day 23 - GitHub Actions CI/CD 實作:從程式碼品質到自動化部署
- Day 24 - Android 建置與簽名實作:從建置錯誤到自動化部署
- Day 25 - iOS 上架挑戰實戰:從證書錯誤到 TestFlight 部署
- Day 26 - iOS 部署成功:從 App Store Connect API Keys 到完整自動化流程
AI 開發工具篇 (Day 27-29)
- Day 27 - Cursor + Claude 實戰指南:從 Agent 到 Commit 的完整開發流程
- Day 28 - Cursor 進階功能 + Figma MCP:解決設計與開發的鴻溝
- Day 29 - Flutter 效能優化:從卡頓到流暢的實戰經驗
完賽篇 (Day 30)
📝 專案資訊
-
專案名稱: Crew Up!
-
開發日誌: Day 30 - 完賽心得
-
文章日期: 2024-01-30
-
技術棧: Flutter, Firebase, Clean Architecture, AI Integration
-
作者 Instagram: @cloudia.live
🙏 致謝
感謝所有在這段旅程中支持我的人:
-
讀書會夥伴們:一起研讀 Flutter Engineering,共同成長
-
CREW UP 團隊:提供優秀的設計與產品構想,更給予我開發實現的信心與全力支持
-
AI 開發工具:Vibe Coding 與 AI 協作,大幅提升開發效率與文章品質
-
鐵人賽參賽者們:相互鼓勵與學習,一起完成這個挑戰
-
所有讀者:你們的閱讀、回饋與支持是我最大的動力
這不是結束,而是新的開始!
讓我們繼續在軟體開發的道路上前進,創造更多美好的產品!
🚀 See you in the next adventure!